package com.yfp.operation.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 打卡管理主表
 */
@Data
public class ActivitySignInsCreateReqDTO implements Serializable {

    private static final long serialVersionUID = 3922574596676900302L;

    /**
     * 活动名称
     */
    @Schema(description = "活动名称")
    private String name;

    /**
     * 活动开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "活动开始时间")
    private Date startTime;

    /**
     * 活动结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "活动结束时间")
    private Date endTime;

    /**
     * 活动备注
     */
    @Schema(description = "活动备注")
    private String remark;

    /**
     * 活动设置背景图
     */
    @Schema(description = "活动设置背景图")
    private String backgroundImg;

    /**
     * 活动设置按钮名称
     */
    @Schema(description = "活动设置按钮名称")
    private String buttonName;

    /**
     * 活动设置活动说明
     */
    @Schema(description = "活动设置活动说明")
    private String activityRule;

    /**
     * 打卡规则
     */
    @Schema(description = "打卡规则")
    private List<ActivitySignInsRulesCreateReqDTO> activitySignInsRulesList;

    /**
     * 已打卡icon
     */
    @Schema(description = "已打卡icon")
    private String checkedIcon;

    /**
     * 未打卡icon
     */
    @Schema(description = "未打卡icon")
    private String uncheckedIcon;

    /**
     * 分享设置分享标题
     */
    @Schema(description = "分享设置分享标题")
    private String shareTitle;

    /**
     * 分享设置上传图片
     */
    @Schema(description = "分享设置上传图片")
    private String shareImg;

    /**
     * 城市名称
     */
    @Schema(description = "城市名称")
    private String cityName;

}